cleftdfandomcom-20200216-history
Mprog Compendium/Examples
Chibi-Devil Mob Info Short descr :a Chibi-Devil Long descr: :A miniature devil flaps around here on tiny bat wings. Description: :This little demon is almost cute. It is exactly like a devil but very small. It has small bat wings to flap around with, little nubby red horns, and even a miniature pitchfork. Chibi-devils love causing mischief for adventurers, and are not above swiping from their bags. MOBPrograms for [ 9153]: Number Vnum Trigger Phrase ------ ---- ------- ------ [ 0] 9154 GREET 30 [ 1] 9161 RANDOM 5 [ 2] 9155 SPAWN 100 Mobprogs MPROG 9154 30 if align $n > 500 mob skill backstab $n endif This program executes 30 percent of the time whenever the chibi-devil sees someone enter the room. The $n variable is a shortcut for 'the person that triggered the program'. Basically, if the person's alignment is greater than 500, we backstab the poor sucker. This program is simple, but effective. MPROG 9161 5 say Uee-hee-hee! There is a 5% chance, every tick that the mob's not fighting, of this mob giggling out loud. (Random progs do not execute during fights) MPROG 9155 100 mob oload 9165 1 W This program executes every time the mob loads. It makes the mob load and wield a specific item (in this case, a pitchfork; a short piercing weapon so the mob can use backstab). This could also be accomplished with resets, but you can put random chances on a spawn prog. Guardia Soldier Conversely, this is about the most complicated single mprog I can think of: if level $n < 40 if rand 33 say Give it a rest, kid. else if rand 50 say Simmer down there, sparky. else say Whoa, calm down! endif endif mob peace mob goto self endif if counter $i 1 remove double wield _+grdwep mob skill dual tonfa mob count zero break endif if carries $i double if affected $i haste else if rand 33 mob count 1 remove _+grdwep hold double zap self break endif endif endif if hpcnt $i < 25 and rand 50 if carries $i potion quaff potion break endif if clones > 1 mob skill fallback 2.guardiasoldier else if rand 33 if rand 33 say I don't wanna die! else if rand 50 say Where's my backup!? else shriek endif endif mob flee endif endif endif if wears $i +projectile if rand 33 mob at 9849 remove +projectile if rand 50 emote loads and fires incendiary ammunition! mob oload 9807 0 W else emote loads and fires envenomed ammunition! mob oload 9808 0 W endif mob goto self mob kill $n mob junk fakecrossbow mob at 9849 wield +projectile endif break endif if rand 33 if rand 50 mob skill bash else mob skill trip endif endif Feel free to try to decipher this! These mobs: *Have different special attacks depending on which weapon they spawned with. **Loading a special weapon with an odd damage type, going to a different room to wield it, then doing an extra attack, then (silently) switching back to the first weapon, emulates having a true special attack. *Emulate a player having to remove a weapon to zap themselves with a haste materia. *Fallback behind an ally when low on HP, or chug a potion, or flee. *Say different things randomly when running away or not killing a